ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Additional Macro Examples ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ This file contains a number of sample macros. Feel free to copy any of them to COMMO.MAC and to alter them to your own needs. Additions will be made to this file as time permits. Thanks to the users for their contributions. {COMMO} macros can be made to do many amazing things besides just logging into BBS's and doing mail runs (those are indeed popular functions, however). Some of the simplest macros demonstrate this capability. The next two macros are used for reading messages. They use the grey plus and minus keys in the lower right corner of the keyboard. The first one sends a , then clears the screen. Makes messages a lot easier to read since each one starts displaying at the top of the screen. The second macro just sends a . Nice for keyboards without the extra Enter key. Message reading macros ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ {gr+} {send |} {clear} {} {gr-} {send ^M} {} Start my mail reader after a mail run ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ {cF4} {exen slmr} {} SLMR My generic login macro will login to most popular BBS's. The generic login subroutine can be called from mail run macros, etc. The GOLOok with the ";passwor" ignores the string "password" in the opening instructions on an Auntie board. Generic login macro ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ {...} {capture y,c:\commo\commo.cap} RBBS, PCBoard, Auntie, etc. {asci ,} {call gls} {} Generic login subroutine ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ {gls} {setlook 60,hng,10,|} {li1} {golo li2,(enter)} {golo li3,graphics (enter)} {golo li4,first name} {golo li5,last name} {golo li3,correct} {golo li1,;passwor} {lookfor password} {send ~#|} {return} {li2} {send ~|} {goto li1} {li3} {send ~y|} {goto li1} {li4} {send ~Fred|} {goto li1} {li5} {send ~Brucker|} {goto li1} Here is a macro to do a mail run on a PCBoard with a MarkMail door. It will upload a reply packet if one exists (the "-u" DSZ parameter will delete it if the upload is successful), then download the new mail. At the end it will wait for carrier detect to drop, then continue multi-number dialing. Motherboard mail run ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ {mot} {capture y,c:\commo\mother.cap} {asci ,} {call gls} {setlook 60,hng,6,n|} {lookfor board command?} {setlook 90,hng} Í turn off prompt timer {send open 8|} {look markmail command?} {ifexist c:\ul\julie.rep,,mb1} {send u|} {lookfor ^xB01} {execute DSZ port %p sz -m -u ul\julie.rep} {lookfor command?} {mb1} {send dg|} {golook mb2,no messages found} {lookfor ^xB00} {call zzz} {goto ncr} {mb2} {send g|} {ncr} {setlook 60} {nc1} {pause 1} {ifcarrier nc1} {pause 2} {dial ,} {} This is my mail run macro for an RBBS with a JIMMER mail door. If a reply packet exists, it will be uploaded. If there is no reply packet it will download the new messages. Directory Assistance mail run ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ {dir} {capture y,c:\commo\dir.cap} {asci ,} {call gls} {setlook 60,hng,5,|} {push} {golo di5,[y],n)?} {lookfor your command} {pops} {send open jimmer|} {setlook 30,hng} {call di3} {ifexist c:\ul\dirasnt.rep,,di1} {send u|} {lookfor ^xB01} {execute DSZ port %p sz -m -u c:\ul\dirasnt.rep} {call di3} {send g|} {goto di2} {di1} {send j|} {golook ncr,no messages to download} {setlook 180,off} {lookfor ^xB00} {call zzz} {di2} {lookfor slam!} {goto ncr} {di3} {golook di4,to continue>} {lookfor your selection} {return} {di4} {send |} {goto di3} {di5} {send n|} {return} Here's my latest whizbang quoting macro. It changes the Screen Image file to a temporary file, then goes into Scrollback. In Scrollback I write a block of text to disk (the quote), then exit. My editor (QEdit) is then executed on the temporary file. I do what I need there to dress up the quote (like add quoting marks, etc.). When I save the file and exit the editor, the macro does an ASCII Upload of the file, deletes it and restores the Screen Image filename to what it was before. Quoting macro ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ {cf6} {screen n,c:\dl\temp} {scroll} {exen q c:\dl\temp} {asci c:\dl\temp} {exen del c:\dl\temp} {screen n,c:\commo\commo.scn} {} This macro is a mini host mode. It will answer on the first ring, send a welcome message, wait for a password, then execute the batch file HOST.BAT. When you exit back to DOS it will hang up and recycle for the next call. A simple version of HOST.BAT might be: ctty com%1 command Instead of CTTY you could use a program such as DoorWay by Marshall Dudley (available as Shareware). ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ {hos} {capture y,c:\commo\host.cap} {localecho y} {hs1} {setlook 0} {lookfor ring} {send ~~~ata|} {golook hs2,CONNECT 1200} {lookfor CONNECT 2400} {parms 2400,8} {goto hs3} {hs2} {parms 1200,8} {hs3} {pause 2} {send ^L Welcome!!!|^J^J Enter password: } {setlook 5,hs4} {lookfor f} {send .} Put your password here {lookfor r} {send .} (my password is "fred|", | is a cr) {lookfor e} {send .} {lookfor d} {send .} {lookfor |} {send |^J^J^J Login complete.|^J^J Calling host, please wait ...} {execute c:\commo\host %p} {hs4} {pause 1} {hangup y} {goto hs1}